import React, {Component, PureComponent, memo} from 'react';

//
// class PureComponent extends Component {
//   shouldComponentUpdate(nextProps, nextState, nextContext) {
//     //  浅对比
//     //  只对比了一层
//     for (const key in nextProps) {
//       if (nextProps[key] === this.props[key]) {
//         return false
//       }
//       return true
//     }
//   }
// }


class Son extends PureComponent {

  // () {
  // }


  // props发生变化的时候会触发
  componentWillReceiveProps(nextProps, nextContext) {

  }

  // crea
  // componentDidMount() {

  // }

  // willMout

  // 更新之前
  componentDidUpdate(prevProps, prevState, snapshot) {
  }

  // 挂载之前
  componentWillMount() {

  }


  // 类组件
  // shouldComponentUpdate(nextProps, nextState, nextContext) {
  //   console.log(nextProps)
  //   if (this.props.age === nextProps.age) {
  //     return false
  //   }
  //   return true
  // }

  render() {
    console.log('son Renderrender')
    return (
      <div>
        <hr/>
        <h1>son组件</h1>
        {this.props.info.name}
      </div>
    );
  }
}

export default Son;
